<template>
  <!-- header部分 -->
    <header>
        <p>选择头像</p>
    </header>
  <!-- 表单部分 -->
    <ul class="form-box">
        <li>
            <el-form-item>
                <el-upload
                    class="upload-demo"
                    :on-change="handlePreview"
                    list-type="picture"
                    :auto-upload="false"
                    :limit="1"
                >
                    <el-button type="primary">添加图片</el-button>
                </el-upload>
            </el-form-item>
        </li>
        <li>
            <div class="title">
                手机号码：
            </div>
            <div class="content">
                <input type="text"  v-model="user.userPhone" placeholder="手
机号码">
            </div>
        </li>
        <li>
            <div class="title">
                密码：
            </div>
            <div class="content">
                <input type="password" v-model="user.password" placeholder="密码">
            </div>
        </li>
        <li>
            <div class="title">
                确认密码：
            </div>
            <div class="content">

                <input type="password" v-model="confirmPassword" placeholder="确认密码">
            </div>
        </li>
        <li>
            <div class="title">
                用户名称：
            </div>
            <div class="content">
                <input type="text" v-model="user.username" placeholder="用户名称">
            </div>
        </li>
    </ul>
    <div class="button-login">
        <button @click="register(1)">商家注册</button>
        <br>
        <button @click="register(0)">顾客注册</button>
    </div>
</template>

<script setup>
import {reactive, ref} from "vue";
import {registerAPI} from "../api/api.js";


const handlePreview = (e)=>{
    const file = e.raw
    // 创建 FileReader 对象
    const reader = new FileReader();

// 读取文件内容，将其转换为 Base64 编码
    reader.onload = function(event) {
        user.userimage = event.target.result
    };

    reader.readAsDataURL(file);
}
const user = reactive({
    userPhone:"",
    password:"",
    username:"",
    userimage:"",
    type:"0"
})
const confirmPassword = ref("")
const register = (role)=>{
    if (!user.userPhone || !user.username || !user.password){
        alert("内容不能为空")
    }
    else {
        user.type = role
        if (confirmPassword.value === user.password){
            registerAPI(user).then(res=> {
               console.log(res.data)
                if (res.data.code === "200"){
                    alert("注册成功！")
                }
            }).catch(e=>console.log(e))
        }
        else alert("密码不一致")
    }
}
</script>

<style scoped>
/****************** header部分 ******************/
header {
    width: 100%;
    height: 12vw;
    background-color: #0097FF;
    color: #fff;
    font-size: 4.8vw;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
}
/****************** 表单部分 ******************/
.form-box {
    width: 100%;
    margin-top: 12vw;
}
.form-box li {
    box-sizing: border-box;
    padding: 4vw 3vw 0 3vw;
    display: flex;
    align-items: center;
}
.form-box li .title {
    flex: 0 0 18vw;
    font-size: 3vw;
    font-weight: 700;
    color: #666;
}
.form-box li .content {
    flex: 1;
}
.form-box li .content input {
    border: none;
    outline: none;
    width: 100%;
    height: 4vw;
    font-size: 3vw;
}
.button-login {
    width: 100%;
    box-sizing: border-box;
    padding: 4vw 3vw 0 3vw;
}
.button-login button {
    width: 100%;
    height: 10vw;
    font-size: 3.8vw;
    font-weight: 700;
    color: #fff;
    background-color: #38CA73;
    border-radius: 4px;
    border: none;
    outline: none;
}
.button-register {
    width: 100%;
    box-sizing: border-box;
    padding: 4vw 3vw 0 3vw;
}
.button-register button {
    width: 100%;
    height: 10vw;
    font-size: 3.8vw;
    font-weight: 700;
    color: #666;
    background-color: #EEE;
    border-radius: 4px;
    outline: none;
    border: solid 1px #DDD;
}
</style>